Packet switching has proven technically reliable and commercially valuable for the communication of information which occurs in short, high-rate bursts, with long pauses between bursts. Despite its many advantages, the applications of packet switching have been principally limited to data applications and to a lesser extent to voice communication.
As the number of different applications for packet switching grows, the requirements have become more stringent on packet switching systems. They must be capable of routing the packets to their destination, preferably through the use of an address contained within the packet itself. In addition, the system must provide buffering at different nodes within the system to allow for the temporary storage of packets while route translation, error checks, flow control, and packet reconfigurations are effected, and in case intended routes for those packets are temporarily experiencing traffic delays.
Prior art systems for switching packets have been rather small systems consisting of only a few hundred nodes. In addition, such systems have employed large computers using sophisticated software packages to perform the packet switching functions at the nodes within the system. The systems customarily have used complex control protocols to handle the problems of error recovery and flow control and, as a result, have had a limited packet handling capability of only a few thousand packets per second.
Typically, in the prior art, when a packet was received, a computer examined the logical address to determine the destination of the packet and then executed the necessary steps to effect a transmission of the packet to that destination. The process involved the time consuming steps at each node of translating the logical address into a physical address of the transmission link over which the packet was to be transmitted, and then, after receiving and buffering the entire packet, performing error recovery and flow control functions followed by the actual packet retransmission to a succeeding node. Obviously, such a complicated process results in substantial throughput switching delays and undesirably introduces variable delays at different switching nodes, which culminates in packets arriving out of sequence at their destination.
In addition, because of the time required to process the complex protocols within a central computer, additional time was consumed in the prior art systems in processing the packets at each node. Also, the processing of the complex protocols required the complete buffering of an entire packet before the retransmission of that packet.
Prior art systems have also utilized low-speed transmission links between switching nodes. These transmission links have either utilized voice band transmission or only a portion of the available bandwidth on the direct digital system of the nationwide telephone system. The use of voice band transmission required that modems be employed which resulted in relatively low transmission rates of less than 19.2 Kb/s and high error rates. The characteristics of voiceband transmission resulted in the development of complex protocols to detect errors and to do the resulting flow control at each node within the switching system.
Prior art systems utilizing the digital facility of the telephone system used it in the conventional manner by deriving 24 time multiplex channels from the available 1.544 Mb/s transmission link. A complete discussion of this technique is given in Boyle, Colton, Dammann, Karafin, and Mann, "Transmission/Switching Interfaces and Toll Terminal Equipment", 56 The Bell System Technical Journal 1057 (1977). The prior art systems utilize these channels as supplied by conventional telephone equipment. Each such channel only has a 56 Kb/s data transmission rate. A major disadvantage of using low-speed transmission links is the necessity for incorporating the complex protocols to allow flow control between individual nodes within the packet switching system. These protocols require that each node maintain state information with respect to each packet transmitted through the system. The necessity of maintaining the state information requires an undesirably large amount of memory as well as the transmission of special control packets between the intermediate nodes in order to keep all of the stored state information in synchronization. In addition, the packet capacity of the low-speed transmission link is further reduced by the vulnerability to increased traffic on one particular data message or telephone call. This places a requirement on the central processor to distribute packets over transmission links thereby reducing the packet switching capacity of the nodes due to the additional time required to do the packet distribution and load balancing.
Prior art systems had to use a large number of buffers for storing complete packets and in order to store the packets while they were awaiting address translation, error recovery, flow control, and retransmission.
In light of the foregoing, it can be seen that there exists a need for a faster packet switching system and desirably capable of switching data and/or voice signals. Specifically needed are simple packet switching protocols, less activity by central computers on each packet transmission, improved architectures and protocols for operating packet switching nodes and networks, and improved compatibility between such an architecture and broadband digital facilities to obtain the benefits of the inherent high-speed transmission rates of those facilities.